#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2017/11/28 11:37
# @Author  : Beam
# @Site    : 
# @File    : public_method.py
# @Software: PyCharm

'''网站交互的公共方法'''

# def islogin(func):
#   '''用户认证装饰器，这个项目用不到（暂时）'''
# 	def inner(request,*args,**kwargs):
# 		userid = request.session.get('userid')  # 获取当前session id
# 		print(userid)
# 		if not userid:  #如果cookie不存在就跳转到登录页面
# 			err_msg = '请先登录'
# 			return render(request, 'login.html', {'err_msg': err_msg})
# 			# return redirect('/tpl/login')
# 		else:  #否则，自动跳回原本的函数
# 			return func(request,*args,**kwargs)
# 	return inner


def get_request_info(Meta):
	'''用户访问后，把常用的字段提取并组成新的字典返回'''
	REMOTE_ADDR = Meta.get('REMOTE_ADDR',None)   #访客IP
	SERVER_NAME = Meta.get('SERVER_NAME',None)   #访客主机名
	REQUEST_METHOD = Meta.get('REQUEST_METHOD',None) #访客的请求方式
	HTTP_HOST = Meta.get('HTTP_HOST',None)     #访客请求的主机url
	PATH_INFO = Meta.get('PATH_INFO',None)     #访客请求的路径
	HTTP_USER_AGENT = Meta.get('HTTP_USER_AGENT',None) #访客使用的浏览器
	#字典格式，适用于ELK类型的平台
	# newMeta = {
	# 	'REMOTE_ADDR':REMOTE_ADDR,
	# 	'SERVER_NAME':SERVER_NAME,
	# 	'REQUEST_METHOD':REQUEST_METHOD,
	# 	'HTTP_HOST':HTTP_HOST,
	# 	'PATH_INFO':PATH_INFO,
	# 	'HTTP_USER_AGENT':HTTP_USER_AGENT,
	# }
	#字符串格式
	newMeta = "REMOTE_ADDR:'%s' SERVER_NAME:'%s' REQUEST_METHOD:'%s' HTTP_HOST:'%s' PATH_INFO:'%s' HTTP_USER_AGENT:'%s' " % (REMOTE_ADDR,SERVER_NAME,REQUEST_METHOD,HTTP_HOST,PATH_INFO,HTTP_USER_AGENT)
	return str(newMeta)